home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 July / EnigmA AMIGA RUN 20 (1997)(G.R. Edizioni)(IT)[!][issue 1997-07 & 08][EAR-CD IV].iso / earcd / util / sys / dr_20.lha / Dr.changes < prev    next >
Text File  |  1993-11-21  |  6KB  |  119 lines

  1.  
  2. This is the revision history of Dr by Paul Kienitz:
  3.  
  4.               DIFFERENCES BETWEEN RELEASE 2.0 AND RELEASE 1.6 BETA:
  5.  
  6. Dr now works under AmigaDOS 2.04 and up only.  No more ponderous 1.3 code,
  7. yippee!  Also, since the Directory Caching File System of DOS 3.0 renders
  8. fastscan.library obsolete, it is no longer used.  That code which did so
  9. magnificently under 1.3 is of minimal value under 2.x when not actually a
  10. hindrance, and is a complete liability with the DCFS.
  11.  
  12. -Y option added to make it show "Today", "Wednesday", etc instead of date.
  13. -N option added for setting overall output style.
  14.  
  15. Format string substitution codes can now include a field length specification
  16. between the backslash and the letter, as decimal digits.  It is ignored at
  17. present except for the \s, \k, \i, \t, and \w substitutions.  The \w code,
  18. which is replaced with the day of the week that the file's datestamp is on,
  19. is new.
  20.  
  21. Patterns in the middle of a directory name are now handled, for example
  22. "sys:#?/foo/#?.c".  Each directory that matches the pattern before the last
  23. slash gets a header with the real directory name in it, expanded to full
  24. absolute form if -T is used.
  25.  
  26. Formerly, the -X option would override -O; now it doesn't.  This is so -O
  27. behaves in a sensible way with patterns like "#?/readme".
  28.  
  29. Formerly, if a pattern caused multiple directories to be listed, every subdir
  30. scanned would get a "===  name  ===" header, even if nothing in it matched
  31. the pattern.  Now only those with a match get headers.  And now the header
  32. shows "(current dir)" in place of an empty name.
  33.  
  34. Change made after 2.0 beta release: square-bracket character sets in patterns
  35. now work correctly with lowercase letters.
  36.  
  37. That beta release also had a bug in scanning multi-level patterns: the
  38. intermediate directories got dangling locks left on them, so they couldn't be
  39. deleted until after a reboot, and memory was slowly lost.  It also had a
  40. serious bug in the text output function that could cause memory corruption.
  41.  
  42.               DIFFERENCES BETWEEN BETA RELEASE 1.6 AND RELEASE 1.5a:
  43.  
  44. It now handles multiple assigns.  It will search each directory in turn (up
  45. to 50) that the name is assigned to, putting a banner with the full pathname
  46. on top of each one.
  47.  
  48. Sorting of filenames is internationalized -- "año" is sorted between "Anna"
  49. and "ants".  This slows down sorting of large directories a little bit.
  50.  
  51. Added -? option to silently test for anything to fit arguments.
  52.  
  53. Conversion of "*" to "#?" in patterns under 1.x now correctly handles cases
  54. where one or more apostrophes precede the asterisk.
  55.  
  56. -{...} under 2.x now uses System() instead of Execute().  The UserShell, if
  57. any, is used to run the command.  Dr will quit if the command returns 10 or
  58. higher; an option to adjust this "fail level" is probably needed, but there's
  59. no tag for the purpose in V37 System().
  60.  
  61. All text output is now done asynchronously by a background process, so that
  62. disk scanning can go ahead without waiting for output.  This seems to give
  63. little improvement under 1.x but can reduce times by 25% or more under 2.x in
  64. long recursive listings.  I tried to do this before but ran into difficulty
  65. in reacting promptly to ctrl-C break.  It now responds correctly with all
  66. console handlers and OS versions I've tried.  It also will never write any
  67. trailing whitespace before a newline now.
  68.  
  69. Dr now keeps hands off any soft links found in RAM:, or any other filesystem
  70. which claims a dostype of 444F5300 in its volume node (I don't think there
  71. are any others -- they mostly put zero in that slot), because the V37
  72. Ram-Handler allows you to create soft links but freaks out when you try to
  73. read their contents.
  74.  
  75. -T option added to convert the pathnames you specify to absolute form.
  76.  
  77. It now checks for the variable DR-OPTS (either a shell variable or one in
  78. ENV:) for default options.  Added option -@ which prevents this.
  79.  
  80. Removed a lingering Enforcer hit.
  81.  
  82. Woops -- fixed bug in fastscan.library that made it fail to follow hash
  83. chains from links, so that every once in a while something just wouldn't show
  84. in a directory with links in it.  Also made fastscan understand DOS\2 and
  85. DOS\3 dostype codes for internationalized filesystems.  Also added checks for
  86. weird filesystem startup values that could have made it blow up.
  87.  
  88. Got rid of a lingering cosmetic bug wherein passing it "filename/#?" would
  89. cause an extra error message.  1.5a really should have gotten this.
  90.  
  91. When writing out N filenames in more than N columns, it no longer scrunches
  92. the names extra close together in order to allow for one more column which
  93. isn't used anyway.
  94.  
  95.               DIFFERENCES BETWEEN RELEASE 1.5a AND RELEASE 1.5:
  96.  
  97. This is strictly a bugfix; there are no new features.  The bugs fixed relate
  98. to cases in which the item given in the command line is a file and not a
  99. directory.  With various combinations of -O, -X, and -{}, it would do things
  100. like report totals when none were asked for, or execute malformed commands
  101. where it should have taken no action.
  102.  
  103. Custom formatting would produce incorrect results for \p if -X was used or
  104. the arg being shown was a file.  I had to do something cheap:  in these cases
  105. \p simply puts out just what you typed, without even a change in
  106. capitalization.  Except that for root directories, it writes the volume name.
  107. Converting what you typed into an absolute pathname is for another release.
  108. \d attempts to remove the "tail" to print the parent directory name, but
  109. can't do so in all cases, such as if you give a path ending in slashes
  110. indicating parent dir(s).
  111.  
  112. Used my "purify.a" startup module to make it reentrant, instead of the brute
  113. force method of keeping everything on the stack.  This made it a bit simpler
  114. and 400 bytes smaller.  This is NOT the defective purify.a I released before;
  115. it's release 2.
  116.  
  117.               (Differences for versions before 1.5 are no longer
  118.               included in this file.)
  119.